System for dynamic keyword aggregation, search query generation and submission to third-party information search utilities

ABSTRACT

A system for creating keywords or phrases to be used for mining online information has a text source accessible by the system, a keyword aggregation function, and a mechanism for configuring the system. The system extracts keywords and phrases from the text source according to the configuration, for submission to a search facility.

CROSS REFERENCE TO RELATED DOCUMENTS

The instant application claims priority to U.S. provisional applicationSer. No. 60/670,422 filed on Apr. 11, 2005. The application isincorporated herein in it's entirety at by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention is in the field of information search applicationsused on a information network to return data search results as aconsequence of keyword or phrase input and pertains more particularly toa system for dynamic keyword or phrase aggregation on the client sideand for automated submission thereof into a search engine interfacecausing return of keyword or phrase-relevant results.

2. Discussion of the State of the Art

In the field of information searching over a data network like the World

Wide Web, for example, it is well known that any user operating anetwork-capable device hosting a browser application for networknavigation may use a search engine interface provided within the browserapplication in order to search web-based sources for informationrelevant to information search criteria entered into the searchinterface and submitted to a host providing the interface. Well knownexamples of search providers include Altavista™, Google™, Yahoo™,Excite™, and others.

Data returned from an information-search submission of keyword,keywords, or a phrase is typically presented within the browserinterface as an electronic search result page listing interactivehyperlinks that, when invoked, direct the browser to the page associatedwith the universal resource locator (URL) invoked by the link, which maybe textual, graphic, audio, or video data depending upon optionsselected for data return when the search criteria is submitted from thesearch interface.

More recently, search providers have created special compilations ofinformation that may be searched as a specific type or class ofinformation. For example, a user may limit an information search to newsstories only. One of the most noted classes of information that may nowbe exclusively searched are research related documents published bystudents, professors, authors, and other academia-related practitioners.

It has occurred to the inventor that a capability of exclusivelysearching for academia-related documents proves particularly useful tostudents who must perform some kind of research in order to obtainrelevant information for completing assignments. Many of these studentsuse laptops, computers, personal digital assistants, and eventhird-generation (3G) network-capable telephones to conduct suchinformation searches.

A problem with such information searching activity is that it is oftenad hoc and must be performed manually by the user when the user desiresto perform the research. Likewise, it may require some skill todetermine keywords, phrases, and the like that will return optimallyrelevant results that the user may actually use. Often keywords andphrases entered by a user with good intent cause return of many links toinformation that is not relevant to what the user was actually searchingfor. Therefore much time is wasted sifting through data and refining andresubmitting keywords for additional searches. The process can be quitefrustrating to an untrained user, especially one not familiar withinformation search processes.

Therefore, what is clearly needed in the art is an electronic system andsoftware that can compile lists of keywords or phrases from parsing suchas existing course descriptions, assignment descriptions, and othercomputer inputs or created documents that may exist on a usersnetwork-capable device, and an do so without intervention from the user,and submit those keywords or phrases in one or a series of informationsearch operations causing one or a series of returns of relevant resultsto a user interface.

SUMMARY OF THE INVENTION

In an embodiment of the present invention a system is provided forextracting keywords and phrases to be used for mining onlineinformation, comprising a text source accessible by the system, akeyword aggregation function, and a mechanism for configuring thesystem. The system extracts keywords and phrases from the text sourceaccording to the configuration, for submission to a search facility.

In one embodiment configuration includes nature of words or phrases tobe selected as keywords or phrases for submission. Also in oneembodiment the nature of words includes whether the words are nouns,verbs, adjectives or adverbs. Also in one embodiment configurationincludes selecting words or phrases repeated in the text source.

In some embodiments of the system the text source may be a courseschedule, including date or time constraints and the configurationprioritizes keyword or phrase extraction according to the date or timeconstraints. Also in some embodiments the text source may be a document,and the configuration manages keyword or phrase extraction according tospecific portions of the document.

In some embodiments the specific portions may include sentences,paragraphs, pages or chapters. In other embodiments the text source maybe a real-time typing mechanism. In some embodiments the configurationmay manage keyword or phrase extraction by word, sentence, paragraph orpage typed. In still other embodiments the configuration may managekeyword or phrase extraction by time periodicity.

In some embodiments there is a mechanism for submitting keywords andphrases extracted from the text source to a search facility, and theconfiguration may manage submissions by time periods or structuralcharacteristics of the text source. The structural characteristics mayinclude sentences, paragraphs, pages, chapters, or subheadings. In someinstances the system may connected to the Internet network, andsubmissions to the search facility may be managed to occur in real time.In other instances keyword and phrase extraction may occur while thesystem is unconnected to the Internet, and submissions are managed to bemade at times that the system is connected to the Internet.

In some embodiments there may be a mechanism for receiving and usingresults of searches done by the search facility using keywords orphrases extracted by the system, and in some cases the system maydisplay links to Internet-connected information sources found as aresult of a search. The text source may be a real-time typing mechanism,and the search results may be displayed proximate the typed text.

In another aspect of the invention a method for creating keywords orphrases to be used for mining online information is provided, comprisingthe steps of (a) configuring an extraction mechanism; (b) accessing atext source; and (c) extracting keywords or phrases from the text sourceaccording to configuration set in step (a). In step (a) configurationmay include nature of words or phrases to be selected as keywords orphrases, and the nature of words may include whether the words arenouns, verbs, adjectives or adverbs. In some embodiments configurationmay include selecting words or phrases repeated in the text source. Thetext source may be a course schedule, including date or timeconstraints, and the configuration prioritizes keyword or phraseextraction according to the date or time constraints. In some cases thetext source may be a document, and the configuration may manage keywordor phrase extraction according to specific portions of the document,which may be sentences, paragraphs, pages or chapters.

In some embodiments the text source may be a real-time typing mechanism,and the configuration may manage keyword or phrase extraction by word,sentence, paragraph or page typed. In some embodiments the configurationmay manage keyword or phrase extraction by time periodicity.

In some embodiments there may further be a mechanism for submittingkeywords and phrases extracted from the text source to a searchfacility, and in some embodiments the configuration may managesubmissions by time periods or structural characteristics of the textsource. The structural characteristics might include sentences,paragraphs, pages, chapters, or subheadings.

In some cases there is connection to the Internet network, andsubmissions to the search facility are managed to occur in real time.Also in some cases keyword and phrase extraction occurs whileunconnected to the Internet, and submissions are managed to be made attimes connected to the Internet. In some embodiments there may be amechanism for receiving and using results of searches done by the searchfacility using keywords or phrases extracted. Also in some embodimentsthe results displayed may be links to Internet-connected informationsources found as a result of a search. In some cases the text source maybe a real-time typing mechanism, and the search results are displayedproximate the typed text,

BRIEF DESCRIPTION OF THE DRAWING FIGURES

FIG. 1 is a block diagram illustrating a communications network whereinautomated keyword aggregation and information search submission ispracticed according to embodiments of the present invention.

FIG. 2 is a block diagram illustrating a user interface adapted fordynamic keyword aggregation, submission and return of results accordingto an embodiment of the present invention.

FIG. 3 is a block diagram illustrating dynamic keyword aggregation,submission, and search result return according to another embodiment ofthe present invention.

DETAILED DESCRIPTION

FIG. 1 is a block diagram illustrating a communications network 100wherein automated keyword aggregation and information search submissionis practiced according to embodiments of the present invention.Communications network 100 includes a data packet network 102illustrated herein as the well known world wide web (WWW) and will bereferred to hereinafter as WWW 102. Network 102 may be another wide areanetwork (WAN) other than the WWW such as a corporate Intranet, a privateWAN, or a wireless municipal area network (MAN). The WWW is used in thisexample because of its public-access characteristics and because it hasa wide geographic reach. Therefore, the practice of the presentinvention over the WWW is not geographically limited.

A search provider 107 is illustrated within the domain of WWW 102 andrepresents any service provider that enables information search servicesto clients accessing the WWW to perform such services. Search provider107 may be an enterprise such as Google™, Yahoo™, Altavista™, or others.

Search provider 107 has a Web server (WS) 108 illustrated within itsdomain and directly connected to the WWW for communication. WS 108 isadapted to provide information search operations and to returninformation search results to users, typically in the form of hypertexttransfer protocol language (HTML) electronic pages wherein those resultsare presented as a list of relevant hyperlinks to content that isrelevant to search criteria entered by the users. Content resultsreturned are typically compiled before presentation from contentdatabases maintained by provider 107 and illustrated herein as databases109 (a-n) directly connected to WS 108 for data access and alsoconnected in some embodiments to the WWW. The art of maintaining contentfor serving to users operating a search engine interface is well knownand documented in the art. Therefore, detailed descriptions of thevarious methods for maintaining content-relevant links and content forinformation search services will not be provided here accept to say thatin some cases search providers share databases and that some searchproviders maintain special content of a specific class for users tosearch as mentioned above in the background section.

Database 109 a, for example, may contain links to WWW-based newsarticles from many WWW-based news services. Database 109 n, for example,may contain links to WWW-based academia papers or research papers.Search provider 107 may provide users a special option when using asearch engine to access links to information. For example, Google™ hasrecently provided a search engine option for searching links toresearch-based materials or other academically-related information,reports, articles, papers, and the like. The option is known as GoogleScholar™. Providers also have options for culling returned links to moremanageable numbers of links that are most relevant to the enteredcriteria.

A user 104 is illustrated in this example as a computer laptop iconrepresenting a device commonly operated for Internet access and forconducting information searches of the WWW. In one embodiment, user 104represents a student user operating client software 113 adapted forcommunicating with a university system illustrated in this embodiment asuniversity system 103. Client software 113 may be a software applicationdeveloped as a standalone or browser plug-in that enables user 104 toaggregate and organize his or her academic tasks.

University system 103 in this example operates on a campus area network,or a local area network 116 and supports at least one education server115 connected to network 116 and also connected to WWW 102 for accessand communication. User 104 has connection to WWW 102 through anInternet service provider (ISP) 105. The method of Internet connectionmay be dial-up, integrated services digital network (ISDN), digitalsubscriber line (DSL), or cable/modem connection wired or wireless. Inthis example, ISP 105 has a connection server 115 illustrated thereinand adapted to connect customers like user 104 to the Internet.

An educational portal (EDU/Portal) 106 is illustrated in this example,and represents a service provider (known to the inventor) that providessoftware and communication brokering services to education customerslike user 104. EDU/Portal 106 has a main server 110 illustrated thereinand directly connected to WWW 102 for data access and communication.Server 110 has a database 111 associated therewith. Database 111 may beadapted to contain client data including contact information,registration information, password information, and other client data.In one embodiment, EDU/Portal 106 helps user 104 running client software113 to bridge services provided by university system 103 and otherservices that may be available over WWW 102 and may be subscribed to byuser 104.

Main server 110 has a server application 112 illustrated thereon andadapted as a main application to client instance 113 running at user104. In one embodiment, using client 113, which as described above maybe a standalone application or a Web browser plug in, user 104 mayaggregate and organize educational tasks, calendar information, andaccess tasks related to more than one separate learning system such asuniversity system 103. University system server 115 may provide onlinecourse education to user 104. Likewise user 104 may engage in otheronline course education provided by still other educational servers notillustrated in this example. Without EDU/Portal 106, user 104 may berequired to separately manage more than one online educational serviceor system with regard to scheduling, course completion, grademanagement, and so on.

EDU/Portal 106, may access university system 103, and more particularlyES 115 for the purpose of acquiring information from and submittinginformation to the server on behalf of the user. Likewise, EDU/Portal106 may, in one embodiment, function as a proxy between user 104 andother Internet or WWW-based services. In one embodiment of the inventionuser 104 operating client software 113 may manage his online life andacademic life through a same user interface.

Although the present architecture includes EDU/Portal 106, anintermediary service provider is not specifically required in order topractice the present invention. Likewise, user 104 may practice thepresent invention whether he or she is a student engaging in academia ornot. The present example where user 104 is a student subscribing toeducational services provided by university system 103 is for discussionpurposes only as an example to enable clear description the presentinvention.

User 104 has a software capability provided in this example as asoftware option module 114 packaged with client software 113. Module 114is known to the inventor as “My Teaching Associate” or MYTA as anacronym. Module 114 may be provided as a software option in a softwareapplication like client software 113, or it may be provided as a plug inmodule to other software programs like word processors or electroniccalendar applications in other embodiments. It may also be packaged as astandalone application running on laptop 104. In yet another embodimentmodule 114 may be provided as a server side implement at server 115 orat sever 110.

User 104 may connect online and may establish through navigation adirect connection to WS 108 or to ES 115 and partake in normally offeredservices without using MYTA 114 for any purpose. In this embodiment,user 104 may connect online and navigate to EDU/Portal 106, moreparticularly, to main server 110 and with the aid of MYTA 114, the usermay engage services provided by search provider 107 in a way that isdirectly relevant to educational tasks the user may have related touniversity system 103.

MYTA 114 is an intelligent software module that can parse certainkeywords or phrases from educational task descriptions that may be partof course descriptions, assignment tasks, or other requirements that maybe pending in the calendar or schedule of user 104. In one embodiment,those keywords parsed may include certain proper nouns like book titles,authors, course titles, chapter titles, and proper nouns included inassignment descriptions. In one embodiment, certain phases may be parsedwhere those phrases are found in pertinent targeted descriptions. Inaddition, MYTA 114 can note and understand due date informationassociated with educational tasks.

MYTA 114 includes a search operation submitting engine (not illustrated)that can format the parsed data into one or more search queries forsubmission to a search provider like search provider 107. MYTA mayperform this submission directly to WS 108 while user 104 is connectedto WWW 102 through ISP 105. MYTA may also be configured to work inconjunction with EDU/Portal 106 such that search submissions may beperformed for user 104 at such times when user 104 has no activeconnection to WWW 102. User 104 may connect online to WWW 102 and thennavigate to EDU/Portal 106 and server 110. By activating MYTA user 104may update his or her assignment schedule and course work requirements.According to user configuration, MYTA may be adapted to submit keywordsearches ahead of any due dates for assignments or other educationaltasks. Search results returned from a search provider like provider 107,for example, are saved for user 104 and are accessible from MS 110 thenext time user 104 logs in to EDU/Portal 106. In the case of a directonline connection between user 104 and search provider 107, the searchresults are sent directly back to user 104 whereupon they may bedisplayed in a window adapted for the purpose within client application113.

An advantage of enabling a proxy embodiment through EDU/Portal 106 isthat new assignments or other educational tasks that user 104 may beresponsible for may be discovered and one or more keyword aggregationand search submissions may be performed without requiring an onlineconnection or direct involvement from user 104. In this case aserver-side implementation 112 is used and MYTA 114 remains a clientinterface for receiving and displaying the information.

In one embodiment of the present invention, MYTA 114 also includes areal time keyword parser that may be tied to active user typed inputwhen actively working on a document. In this case, user 104 may beactively taking notes or preparing an assignment using a word processoror a typing interface adapted for the purpose. The keyword aggregatorhas a real time mode that may be pre-configured according to severalavailable options to actively parse, aggregate, and format thoseaggregated keywords into one or more search submissions conducted eitherwhile the user is typing or optionally during a pause between typing inthe document.

The search results returned for each submission are displayed ashyperlinks to the content such that when activated, the content appearsin a new browser window. The keyword aggregator may also be configuredto parse phrases, keyword pairs, proper nouns, dates, numbers, names ofpeople, names of places, or names of things. This is accomplished usinga literary rules database containing constraints and other parametersgoverning the parsing process. All keyword aggregation and searchoperations are conducted, if the user is online, in the backgroundenabling the user to continue working in a document without beingdistracted.

The methods and apparatus of the present invention enable a student, forexample, to have relevant information available at the time that it maybe required or desired or the purpose of optimizing assignment tasks interms of efficiency and in terms of quality of work. There are manyconceivable embodiments for student users and other user types thatroutinely complete assignments, articles, research, or otherprofessional reporting requirements.

FIG. 2 is a block diagram illustrating a user interface 113 andcomponents of MYTA 114 adapted for dynamic keyword aggregation,submission and return of results according to an embodiment of thepresent invention. Interface 113 as described further above, may be abrowser interface or a standalone educational interface adapted with Webbrowsing capability. Interface 113 has a scheduled assignments window202 provided therein and adapted to display a user's schedule including,in this example, any pending assignments or tasks. A pending assignment203 is illustrated in this example as one assignment that has been addedto the schedule. Assignment 203 is, for purpose of discussion, a termpaper. The subject is Roman influence. A textbook title and chaptertitle may be referenced as student textbook material that covers thesubject of the assignment.

The author of the student textbook or other reference materials may becited by name. The term paper may have a word count minimum requirement.The term paper may have a parseable due date, and an indication of thegrade percentage of the class grade the paper is worth. MYTA 114 may beinvoked from within interface 113 and when invoked, immediatelyrefreshes to the user schedule. MYTA 114 has a keyword aggregationengine 200 provided thereto and adapted to take keywords from items 203for eventual submission to a search provider. In this example, onlyuseful and important keywords may be aggregated from assignment 203. Forexample, subject Roman influence may be parsed. The textbook title maybe parsed. The name of a relevant author may be parsed. Using thesekeywords together, MYTA 114 may format the information into a relativelynarrow search phrase to return any relevant information associated withthe assignment subject.

A keyword/Phrase submission engine 201 is provided within MYTA 114 andadapted to forge a connection to a search provider server analogous toWS 108 described further above. During a search submission round, engine201 to sends a query formatted according to the search provider'srequired format and then receives any search results sent back as aresult of the submission. The search results may appear in a separatewindow 205 labeled relevant results page. In this example, there are 3listed hyperlinks to relevant content that a user may navigate to andanalyze to see if that content might help with the pending assignment.In one embodiment, MYTA works in the background and the results areautomatically saved as hyperlinks and displayed whenever the userexpands the assignment for review or refresh. The results may be labeledMYTA research links. In some cases, MYTA 114 may even invoke certainhyperlinks to documents like .pdf files or the like in the backgroundand may automatically save those tiles to the user's device in apre-assigned folder linked to the assignment.

Interface 113 has an active typing window 204 provided therein andadapted, in this case for taking notes during a presentation, seminar,or class discussion. In one embodiment, window 204 may be a window to aword processing document that may be used to prepare papers. In eithercase, a user may configure MYTA 114 to take certain keyword types fromthe active window as they are typed in. For example, relevant keywordsthat might be leveraged from the existing text in window 204 may include“Dr. Henry Smith” “early Roman Empire” and “Constantinople”. Aggregationengine 200 may take these keywords as they become available and mayformat them for query submission by engine 201. Window 204 may splitinto two windows in one embodiment whereupon the relevant search resultssimilar to those shown in window 205 may appear in the second window,the first window remaining the typing interface. In one embodiment, theresults may be sent to a separate window. MYTA 114 may be pre-configuredto take keywords and perform one submission every other paragraph, eachparagraph, one time per page, or according to some other directive.Using the real time active typing embodiment, the user is typicallyonline and the results stream in as they become available. However, theuser may type some pre-determined amount of words or paragraphs whileoff line, and then may go online during a pause to initiate thesearching process. The search is performed in the background withoutrequiring the user to navigate to a search page or to manually supply orconfigure a query. In addition to returned hyperlinks, advertisements(sponsored links) may also appear in window 205, in this case, Barnesand Noble and Museum of Rome. These may also be considered viableresources to a student even though ad relevancy in the case of sponsoredlinks is performed by another system.

FIG. 3 is a block diagram illustrating writing interface 204 and resultsinterface 205 according to one embodiment of the present invention. Inthis example, interface 204 is an active note-taking or writinginterface as described in FIG. 2 above. Search results interface 205appears as a second window, linked to interface 204 by result relevancyto content that is typed in the interface.

In interface 204 there are distinct paragraphs that are separated fromeach other. In this case a rule (illustrated above interface 205) isprovided to govern the keyword aggregation and submission engines. Therule or constraint directs to search (Srch) one time per paragraph usingkeywords that are proper nouns and which are repeated in the paragraphat minimum one time. Therefore each time a proper noun is used more thanone time, it is aggregated as a keyword to use for a search operationperformed for that paragraph.

Interface 205 has a search result list 301 and a search result list 302roughly corresponding in position to the associated paragraphs of textin interface 204. List 301 contains hyperlinks 1 through 4 to relevantcontent related to a keyword or keywords taken from the first paragraphtyped into interface 204. Search result list 302 contains hyperlinks 1through 3 to relevant content related to a keyword or keywords takenfrom the second paragraph typed into interface 204. Results returned tointerface 205 might be optimized according to another rule designed toreduce the possible number of links returned. For example, a keywordRome, used by itself is broad and may return many hyperlinks related ingeneral to Rome. Therefore, by adding other relevant key words to Romethe scope of the search may be more narrowly defined and should returnfewer links. Likewise, it may be defined by rule that only the top 5links that are most relevant to the search criteria entered are returnedin a given exchange.

If a user clicks on any of the returned links, a new browser window 303may be triggered to open, connect to the content source addressspecified in the hyperlink and download the relevant content for displayin the window. Although this method works in real time (links beingdelivered while typing still commences) it may also be conducted duringa pause in writing. For example, the first paragraph may be completedand may automatically trigger the process of getting the keyword orwords and submitting the keyword or words. If the user is off line, thesoftware may automatically start the user's Internet connection softwareto connect. Once connected to the WWW, the keyword submission engineconnects to the appropriate Web server and submits the query on behalfof the user in the background while the user is still typing. Whenfinished receiving the results the user may terminate the connection orit may automatically terminate the session until the next round isneeded.

Searching may be conducted with granularity down to once per sentence.However, depending on the content, broader searching may be conducted byparagraph, every 2 paragraphs, or once per page of input. In theschedule embodiment formerly described, a similar fine-tuning ofgranularity may be practiced. For example, instead of conducting a broadsearch using a course title only “Health”, the system may add morekeywords like to health like modern. An authors name and textbook titlemay be added as well as generic keywords that may be added to theformula like “news articles”, “white papers”. Phrasing like “definitionof”, or “description of” may also be inserted by the system to narrow asearch to more relevant results. There are many possibilities.

1-36. (canceled)
 37. A method comprising: parsing, in real-time, by acomputing device, real-time textual input entered into a document toaggregate words contained within the real-time textual input based onone or more parsing rules; formatting, by the computing device, theaggregated words into one or more searches; submitting, by the computingdevice, the one or more searches to a search facility distinct from thecomputing device; and receiving, from the search facility, by thecomputing device, search results responsive to the one or more searches.38. The method of claim 37, wherein the method further comprises thecomputing device displaying the search results.
 39. The method of claim38, wherein the displaying comprises displaying, by the computingdevice, at least a portion of the real-time textual input and the searchresults, the search results being displayed in proximity to the portionof the real-time textual input.
 40. The method of claim 37, furthercomprising, prior to said submitting, determining, by the computingdevice, whether a connection to the search facility is available. 41.The method of claim 40, further comprising, in response to determiningthat the connection is not available: waiting until the connectionbecomes available; and performing said submitting when the connection isavailable.
 42. The method of claim 37, further comprising accessing orreceiving, by the computing device, a textual source other than thedocument from a remote computer system, the remote computer system beingseparate and distinct from the computing device and the search facility.43. The method of claim 42, further comprising: extracting, by thecomputing device, additional words from at least a portion of thetextual source based on additional one or more parsing rules;formatting, by the computing device, the additional words into one ormore additional searches; submitting, by the computing device, the oneor more additional searches to the search facility; and receiving, fromthe search facility, by the computing device, additional search resultsresponsive to the additional searches.
 44. The method of claim 43,further comprising displaying, by the computing device, the real-timetextual input, the textual source, the search results, and theadditional search results in proximity to each other.
 45. The method ofclaim 37, wherein parsing the real-time textual input includes using oneor more parsing rules that include at least one of a part of speechassociated with the words, an indication of whether words are repeated,or an indication of a part of a document to which the words belong. 46.One or more non-transitory computer-readable media having instructionsstored thereon that, if executed by a computing device, cause thecomputing device to perform operations comprising: parsing, inreal-time, real-time textual input entered into a document to aggregatewords contained within the real-time textual input based on one or moreparsing rules; formatting the aggregated words into one or moresearches; submitting the one or more searches to a search facilitydistinct from the computing device; and receiving, from the searchfacility, search results responsive to the one or more searches.
 47. Thecomputer-readable media of claim 46, further comprising displaying thetextual source and search results in proximity to the textual source.48. The computer-readable media of claim 46, wherein parsing thereal-time textual input includes using one or more parsing rules thatinclude at least one of a part of speech associated with the words, anindication of whether words are repeated, or an indication of which partof a document the words belong to.
 49. The computer-readable media ofclaim 48, wherein the operations further comprise: determining whether aconnection to the search facility is available; and in response todetermining that the connection is not available: waiting until theconnection becomes available; and performing said submitting when theconnection is available.
 50. The computer-readable media of claim 46,wherein the operations further comprise: accessing or receiving atextual source other than the document from a remote computer systemseparate and distinct from the computing device and the search facility;extracting additional words from at least a portion of the textualsource based on additional one or more parsing rules; formatting theadditional words into one or more additional searches; submitting theone or more additional searches to the search facility; receiving, fromthe search facility, additional search results responsive to the one ormore additional searches.
 51. The computer-readable media of claim 50,wherein the operations further comprise displaying the additional searchresults with the search results, the document, and the textual source inproximity to each other.
 52. An apparatus comprising: a processor; andlogic configured to be operated by the processor to: receive real-timetextual input being entered into a document to generate the document,parse, in real-time, the real-time textual input being entered into theapparatus, to aggregate words contained within the real-time textualinput based on one or more parsing rules; format the aggregated wordsinto one or more searches; submit the searches to a search facilitydistinct from the apparatus; and receive, from the search facility,search results responsive to the searches.
 53. The apparatus of claim52, wherein the logic is further configured to be operated by theprocessor to display the received search results.
 54. The apparatus ofclaim 52, wherein the logic is further configured to be operated by theprocessor to: access or receive a textual source other than the documentfrom a remote computer system separate and distinct from the computingdevice and the search facility; extract additional words from at least aportion of the textual source based on additional one or more parsingrules; format the additional words into one or more additional searches;submit the one or more additional searches to the search facility;receive additional search results responsive to the one or moreadditional searches.
 55. The apparatus of claim 52, wherein the logic isfurther configured to be operated by the processor to display thereal-time textual input, the textual source, the search results, and theadditional search results in proximity to each other.
 56. The apparatusof claim 52, wherein the logic is further configured to be operated bythe processor to determine whether a connection to the search facilityis available, and, in response to a determination that the connection isnot available: waiting until the connection becomes available; andperforming said submitting when the connection is available.